Artifact: Software Development Plan
Purpose
The purpose of the Software Development Plan is to gather all the information necessary to control the project. It describes the approach to the development of the software and is the top-level plan generated and used by the managers to direct the development effort. The following people use the Software Development Plan:
Brief
Outline
(hyperlinks into HTML template in a new window) 1. Introduction1.1 Purpose1.2 Scope1.3 Definitions, Acronyms and Abbreviations1.4 References1.5 Overview2. Project Overview2.1 Project Purpose, Scope and Objectives2.2 Assumptions and Constraints2.3 Project Deliverables2.4 Evolution of the Software Development Plan3. Project Organization3.1 Organizational Structure3.2 External Interfaces3.3 Roles and Responsibilities4. Management Process4.1 Project Estimates4.2 Project Plan4.2.1 Phase Plan4.2.2 Iteration Objectives4.2.3 Releases4.2.4 Project Schedule4.2.5 Project Resourcing4.2.5.1 Staffing Plan4.2.5.2 Resource Acquisition Plan4.2.5.3 Training Plan4.2.6 Budget4.3 Iteration Plans4.4 Project Monitoring and Control4.4.1 Requirements Management Plan4.4.2 Schedule Control Plan4.4.3 Budget Control Plan4.4.4 Quality Control Plan4.4.5 Reporting Plan4.4.6 Measurement Plan4.5 Risk Management plan4.6 Close-out Plan5. Technical process plans5.1 Development Case5.2 Methods, Tools and Techniques5.3 Infrastructure Plan5.4 Product Acceptance Plan6. Supporting Process Plans6.1 Configuration Management Plan6.2 Evaluation Plan6.3 Documentation Plan6.4 Quality Assurance Plan6.5 Problem Resolution Plan6.6 Subcontractor Management Plan6.7 Process Improvement Plan7. Additional Plans8. Annexes9. IndexEnclosed
Artifacts
Note that although the Rational Unified Process recognizes the possible need for an Infrastructure Plan, Documentation Plan, Sub-contractor Management Plan and Process Improvement Plan, they are currently outside the scope of the process, and no explicit guidance is provided for their creation or for their contents. Timing
Developed during inception. Updated at each major milestone. Responsibility
The Worker: Project Manager is responsible for compiling the enclosed documents and making sure the latest versions are kept available through the Software Development Plan. Tailoring
There are situations when a standard is called out in a contract that stipulates the outline and contents of a Software Development Plan. In this case you would use that instead of the above proposed outline, but you should form a clear mapping of the information requirements of that standard to the outline above. Additional Information
Good software development plans evolve. A useful Software Development Plan is periodically updated (it is not stagnant shelfware), and it is understood and embraced by managers and practitioners. The Software Development Plan is the defining document for the project's process. Prepare a single Software Development Plan that:
A standard format promotes:
A key discriminator of good Software Development Plans is their conciseness,
lack of philosophy, and focus on meaningful standards and procedures. |
Rational Unified
Process |